package com.jiang.专题.数组.Q26;

/**
 * @author Jiang
 * @version 1.0
 * @date 2024/12/13 19:07
 */
class Solution {
    public int removeDuplicates(int[] nums) {
            //用 j 表示出现重复元素的位置
//        int res = 1;
//        for (int i = 1, j = -1; i < nums.length; i++) {
//            if (nums[i] > nums[i - 1]) {
//                res++;
//                if (j != -1) {
//                    nums[j] = nums[i];
//                    j++;
//                }
//            } else if (j == -1) {
//                j = i;
//            }
//        }
//        return res;

        // 单指针法
        int i = 0;
        for (int num: nums) {
            if (i < 1 || num > nums[i - 1]) {
                nums[i++] = num;
            }
        }
        return i;
    }
}
